home *** CD-ROM | disk | FTP | other *** search
/ Aminet 24 / Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso / Aminet / comm / misc / CapiRexxVoiceM.lha / arexx.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-10-07  |  1.5 KB  |  91 lines

  1. #ifndef AREXX_H
  2. #define AREXX_H
  3. /*
  4. **
  5. **    $Id: arexx.h,v 1.1 1995/10/07 02:49:02 amiga Exp $
  6. **    $Revision: 1.1 $
  7. **
  8. **    $Filename: answeringmachine/arexx.h $
  9. **    $Author: amiga $
  10. **    $Date: 1995/10/07 02:49:02 $
  11. **    $Portability: AMIGADOS $
  12. **
  13. **    Header file für das ARexx-Interface
  14. **
  15. **    COPYRIGHT (C) 1991, 1992 BY CHRISTIAN A. WEBER, ZUERICH.
  16. **    COPYRIGHT (C) 1992-1995 BY RELOG AG, ZUERICH. ALL RIGHTS RESERVED.
  17. **    NO PART OF THIS SOFTWARE MAY BE COPIED, REPRODUCED, OR TRANSMITTED
  18. **    IN ANY FORM OR BY ANY MEANS,  WITHOUT THE PRIOR WRITTEN PERMISSION
  19. **    OF RELOG AG.
  20. **
  21. */
  22.  
  23. #include "os.h"
  24. #include <exec/ports.h>
  25.  
  26. #include <rexx/rxslib.h>
  27. #include <rexx/storage.h>
  28. #include <rexx/errors.h>
  29.  
  30.  
  31. /*
  32. **    REXX command handler function prototype
  33. */
  34. typedef S32 RexxFunc( char *, VOID * );
  35.  
  36.  
  37. /*
  38. **    ARexx Port Structure
  39. */
  40. struct ARexxPort
  41. {
  42.     struct MsgPort    *Port;
  43.     VOID            *UserData;    /* Second parameter for RexxFunc */
  44.     U16                MsgCount;
  45. };
  46.  
  47.  
  48. /*
  49. **    Variable
  50. */
  51. #ifdef _AREXX
  52. #define VEXTERN
  53. #else
  54. #define VEXTERN extern
  55. #endif
  56.  
  57. VEXTERN char    rexx_resultstring[256];        /* Puffer für ARexx-Resultate */
  58.  
  59. #undef VEXTERN
  60.  
  61.  
  62. /*
  63. **    Prototypes
  64. */
  65.  
  66. BOOL
  67. ARexx_Init( VOID );
  68.  
  69. VOID
  70. ARexx_Exit( VOID );
  71.  
  72. struct ARexxPort *
  73. ARexx_CreatePort( char *, VOID * );
  74.  
  75. VOID
  76. ARexx_DeletePort( struct ARexxPort * );
  77.  
  78. BOOL
  79. ARexx_GetString( char **, char *, int );
  80.  
  81. BOOL
  82. ARexx_GetInteger( char **, S32 * );
  83.  
  84. VOID
  85. ARexx_HandleMessages( struct ARexxPort * );
  86.  
  87. BOOL
  88. ARexx_LaunchScript( struct ARexxPort *, char * );
  89.  
  90. #endif
  91.